Managing unprofessional media content

ABSTRACT

This disclosure relates to systems and methods that include storing less than a threshold number of media content activity levels for media content objects at an online social networking service, identifying, using the stored media content activities, a threshold number of media content objects associated with a higher number of the media content activities occurring over a recent threshold period of time, receiving an indicator indicating that one of the identified media content objects is unprofessional, and propagating the indicator to each activity that includes the unprofessional media content object.

TECHNICAL FIELD

The subject matter disclosed herein generally relates to data processingand more particularly, to managing unprofessional media content.

BACKGROUND

Providers and administrators of an online social networking servicemanage media content in a variety of different ways. Members of theonline social networking service submit media content for inclusion inthe online social networking service. In certain examples, determiningwhether the media content is relevant to the online social networkingservice can be difficult.

In some examples, submitted media content may be inappropriate for aprofessional online social networking service. A system may analyze allmedia content submission to the online social networking service, butsuch an approach for a large service would likely be prohibitiveconsidering computing resources needed to perform the analysis. Inanother example, a system may track activities for a media contentobject, however, the nature of the activities does not typicallyindicate whether the media content object is unprofessional or not.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings.

FIG. 1 is a block diagram illustrating various components or functionalmodules of an online social networking service, in an exampleembodiment.

FIG. 2 is a schematic block diagram illustrating components of a contentmanagement system, according to one example embodiment.

FIG. 3 is a schematic block diagram illustrating one scenario for acontent management system, according to an example embodiment.

FIG. 4 is a schematic block diagram illustrating a content managementsystem, according to one example embodiment.

FIG. 5 is a flow chart diagram illustrating a method for managingunprofessional media content, according to one example embodiment.

FIG. 6 is a flow chart diagram illustrating another method for managingunprofessional media content, according to an example embodiment.

FIG. 7 is a flow chart diagram illustrating one method for managingunprofessional media content, according to one example embodiment.

FIG. 8 is a flow chart diagram illustrating one method for managingunprofessional media content, according to an example embodiment.

FIG. 9 is a block diagram illustrating components of a machine able toread instructions from a machine-readable medium.

DETAILED DESCRIPTION

The description that follows includes systems, methods, techniques,instruction sequences, and computing machine program products thatembody illustrative embodiments of the invention described in thepresent disclosure. In the following description, for the purposes ofexplanation, numerous specific details are set forth in order to providean understanding of various embodiments of the inventive subject matter.It will be evident, however, to those skilled in the art, thatembodiments of the inventive subject matter may be practiced withoutthese specific details. In general, well-known instruction instances,protocols, structures, and techniques are not necessarily shown indetail.

Example methods and systems are directed to managing distribution ofmedia content. Examples merely typify possible variations. Unlessexplicitly stated otherwise, components and functions are optional andmay be combined or subdivided, and operations may vary in sequence or becombined or subdivided. In the following description, for purposes ofexplanation, numerous specific details are set forth to provide athorough understanding of example embodiments. It will be evident to oneskilled in the art, however, that the present subject matter may bepracticed without these specific details.

In one example embodiment, a system is configured to monitor activitiesat the online social networking service. The activities include a memberof the online social networking service, an action, and a content mediaobject. In one example, an activity includes a member posting a mediacontent object to the online social networking service. In response,other members may view, forward, comment, like, dislike, hide, complain,or perform any other action on the posting activity. These activitiesare associated with the media content object because the media contentobject is included in the activity. In one example embodiment, thesystem aggregates activities that are associated with the media contentobject.

In another example embodiment, the system identifies a threshold numberof media content objects associated with a highest number of activities.For example, where a member submits a media content object and manyother members perform activities on the submission activity, theactivities are associated with the media content object. In response tothe media content object being associated with more activities thanother media content objects, the system identifies the media contentobject as a candidate. Candidate media content objects may be removed,flagged, or otherwise identified allowing the system to manage the mediacontent object in any other way.

In one example, the media content object is liked more times than otherobjects. In another example, the media content object is forwarded moretimes than other objects. In certain embodiments, media contentincludes, but is not limited to, text, images, audio, video, or othermedia content as one skilled in the art may appreciate.

The system may then transmit the media content objects that areassociated with the most number of activities for analysis. In oneexample, the system presents the media content objects to anadministrator for the system and receives an indicator from theadministrator whether the media content objects are unprofessional ornot. In another example, the system sends the media content objects to aremote learning machine for classification. In one example, a machinelearning system is trained on a set of indicators so that it is capableof determining whether a media content object is unprofessional or not.

In one example embodiment, the system then receives an indicator thatindicates the media content object is unprofessional and in responsepropagates the indicator to all activities that are associated theunprofessional media content. For example, in response to receiving anindicator that a media content object is unprofessional, the systemdetermines all activities that include the media content object andflags them. In one embodiment, the flagged media content objects areremoved. In another embodiment, the flagged media content objects areassigned a lower priority than other media content objects. In this way,the system may more quickly manage unprofessional media content from theonline social networking service in response to determining that themedia content object is unprofessional.

In one example embodiment, in response to a query that results in one ormore media content objects are have been identified as unprofessional,the system may present the unprofessional media content objects afterdisplaying the professional media content objects. In another exampleembodiment, the unprofessional media content objects and all activitiesassociated with the unprofessional media content objects are removedfrom the online social networking service. In certain embodiments,unprofessional media content includes irrelevant content, bad content,morally objectionable content, unintelligent content, a puzzle, obscenecontent, or other content undesired by a professional.

FIG. 1 is a block diagram illustrating various components or functionalmodules of an online social networking service 100, consistent with someexamples. The online social networking service 100 may be utilized byusers to perform activities on submitted media content objects. In oneexample, the online social networking service 100 includes the contentmanagement system 150 that performs the various media contentidentification and removal operations described herein.

A front end 101 consists of a user interface module (e.g., a web server)102, which receives requests from various client-computing devices, andcommunicates appropriate responses to the requesting client devices. Forexample, the user interface module(s) 102 may receive requests in theform of Hypertext Transport Protocol (HTTP) requests, or otherweb-based, application programming interface (API) requests. In anotherexample, the front end layer 101 receives requests from an applicationexecuting via a member's mobile computing device. In one example, amember submits media content for inclusion in the online socialnetworking service 100, or requests media content from the online socialnetworking service 100.

An application logic layer 103 includes various application servermodules 104, which, in conjunction with the user interface module(s)102, may generate various user interfaces (e.g., web pages,applications, etc.) with data retrieved from various data sources in adata layer 105.

In some examples, individual application server modules 104 may be usedto implement the functionality associated with various services andfeatures of the online social networking service 100. For instance, theability of an organization to establish a presence in the social graphof the online social networking service 100, including the ability toestablish a customized web page on behalf of an organization, and topublish messages or status updates on behalf of an organization, may beservices implemented in independent application server modules 104.Similarly, a variety of other applications or services that are madeavailable to members of the online social networking service may beembodied in their own application server modules 104. Alternatively,various applications may be embodied in a single application servermodule 104.

In some examples, the online social networking service 100 includes thecontent management system 150, such as may be utilized to receive mediacontent, identify media content objects associated with more activities,receive an indicator that the media content is unprofessional, andpropagate the indicator to other activities that are associated with theunprofessional media content.

As illustrated, the data layer 105 includes, but is not necessarilylimited to, several databases 110, 112, 114, such as a database 110 forstoring profile data, including both member profile data as well asprofile data for various organizations. Consistent with some examples,when a person initially registers to become a member of the onlinesocial networking service 100, the person may be prompted to providesome personal information, such as his or her name, age (e.g.,birthdate), gender, interests, contact information, home town, address,the names of the member's spouse and/or family members, educationalbackground (e.g., schools, majors, matriculation and/or graduationdates, etc.), employment history, skills, professional organizations,and so on. This information is stored, for example, in the database 110.Similarly, when a representative of an organization initially registersthe organization with the online social networking service 100, therepresentative may be prompted to provide certain information about theorganization. This information may be stored, for example, in thedatabase 110, or another database (not shown). With some examples, theprofile data may be processed (e.g., in the background or offline) togenerate various derived profile data. For example, if a member hasprovided information about various job titles the member has held withthe same or different companies, and for how long, this information canbe used to infer or derive a member profile attribute indicating themember's overall seniority level, or seniority level within a particularcompany. With some examples, importing or otherwise accessing data fromone or more externally hosted data sources may enhance profile data forboth members and organizations. For instance, with companies inparticular, financial data may be imported from one or more externaldata sources, and made part of a company's profile.

Once registered, a member may invite other members, or be invited byother members, to connect via the online social networking service. A“connection” may require a bi-lateral agreement by the members, suchthat both members acknowledge the establishment of the connection.Similarly, with some examples, a member may elect to “follow” anothermember. In contrast to establishing a connection, the concept of“following” another member typically is a unilateral operation, and atleast with some examples, does not require acknowledgement or approvalby the member that is being followed. When one member follows another,the member who is following may receive status updates or other messagespublished by the member being followed, or relating to variousactivities undertaken by the member being followed. Similarly, when amember follows an organization, the member becomes eligible to receivemessages or status updates published on behalf of the organization. Forinstance, messages or status updates published on behalf of anorganization that a member is following will appear in the member'spersonalized data feed or content stream. In any case, the variousassociations and relationships that the members establish with othermembers, or with other entities and objects, are stored and maintainedwithin a social graph database.

The online social networking service 100 may provide a broad range ofother applications and services that allow members the opportunity toshare and receive information, often customized to the interests of themember. For example, with some examples, the online social networkingservice 100 may include a photo sharing application that allows membersto upload and share photos with other members. With some examples,members may be able to self-organize into groups, or interest groups,organized around a subject matter or topic of interest. With someexamples, the online social networking service 100 may host various joblistings providing details of job openings with various organizations.In other embodiments, the content management system 150 stores receivedmedia content in a media content storage database 112.

As members interact with the various applications, services and contentmade available via the online social networking service 100, informationconcerning content items interacted with, such as by viewing, playing,forwarding, liking, disliking, hiding, reporting, and the like, etc.,may be monitored and information concerning the interaction may bestored, for example, as indicated in FIG. 1 by the database 114. Theinteractions with the online social networking service 100 may be storedas activities. Thus, previous interactions with a media content item byvarious members of the online social networking service 100 may bestored and utilized in determining, among other factors, how varioustypes of content items, such as organic content items and sponsoredcontent items, result in differences in engagement levels with thecontent items by members of the online social networking service 100.

Although not shown, with some examples, the online social networkingservice 100 provides an application programming interface (API) modulevia which third-party applications can access various services and dataprovided by the online social networking service 100. For example, usingan API, a third-party application may provide a user interface and logicthat enables the member to submit a media content object, or perform anyother activities on a media content object. Such third-partyapplications may be browser-based applications, or may be operatingsystem-specific. In particular, some third-party applications may resideand execute on one or more mobile devices (e.g., phone, or tabletcomputing devices) having a mobile operating system.

FIG. 2 is a schematic block diagram illustrating components of a contentmanagement system, according to one example embodiment. In one exampleembodiment, the content management system 150 includes an activitiesmodule 220, an identification module 240, an indicator module 260, and amachine learning system 215.

In one example embodiment, the activities module 220 stores up to twolevels of media content activities at an online social networkingservice. Activities include each event where a member of the onlinesocial networking service performs some action on a media contentobject. Therefore, an activity includes a member, an action, and a mediacontent object. For example, where a member likes a media contentobject, the activity includes the member, the “like” action, and themedia content object. In a specific example, a member may comment on animage submitted by another member.

In another example embodiment, the activities module 220 limits activitystorage to a threshold number of levels. In one specific example, theactivities module 220 limits the number of level to two. For example, ina hierarchy of activities associated with a media content object,members perform many actions on the activity that includes submittingthe media content object. These actions include the first level ofactivities. The second level of activities includes members that performactions on activities that are included in the first level ofactivities. According to this example embodiment, the activities module220 does not monitor or store activities beyond the second level. Inthis way, the activities module 220 is not overwhelmed by an exponentialgrowth in activities for popular media content objects. Of course, inother embodiments, the threshold number of levels is three or more andthis disclosure is not limited in this regard.

In one example, a first activity includes a member posting an image tothe online social networking service. In response, the image is viewedby other members. For example, one member “likes” the image, anothermember forwards the image, and another member comments on the image.These three actions are included in a second level of activitiesassociated with the image (the media content object) because these areactions are acting upon the initial activity of posting the image.

A third level of activities are activities that include actions onactivities in the second level, etc. In this example, other members ofthe social networking service view the second level of activitiesassociated with the posted media content object and perform additionalactions on the second level of activities. For example, one member maydislike the member's “like” action, another member may comment on an theearlier members “forward” action, and yet another member may forward theearlier member's “comment” action. Because these activities includeactions on the second level of activities, they are at a third level ofactivities associated with the media content object.

In one example embodiment, the identification module 240 identifies athreshold number of media content objects having a higher number ofassociated activities over a recent threshold period of time. In oneexample, the threshold period of time is one week and the thresholdnumber of media content objects is 1,000. In this example, theidentification module 240 sorts the media content objects according tothe number of activities associated with the media content objects andselects the top 1,000 media content objects. In this way, theidentification module 240 determines the 1,000 media content objectsthat are subjects of the highest number of activities over the pastweek. Of course, other time periods and other threshold number of mediacontent objects may be used and this disclosure is not limited in thisregard.

In another example embodiment, the identification module 240 transmitsthe threshold number of media content objects to an administrator of theonline social networking service 100. In one example, the identificationmodule 240 transmits the media content objects to the administrator bygenerating a user interface that displays the media content objects. Inthis way, the identification module 240 presents the media contentobjects to the administrator. In a specific example, the identificationmodule 240 presents the media content object using the interface module102. Therefore, the interface may include a graphical interface, anelectronic interface, a virtual interface, an API, or any otherinterface as one skilled in the art may appreciate.

In one example embodiment, the interface allows the administrator tosort the threshold number of media content objects by a type of theaction associated with the activities associated with the media contentobjects. For example, the interface may provide one or more selectionsallowing the administrator to view the media content objects with ahighest number of likes, forwards, dislikes, hides, or any other actionthat a member of the online social networking service may perform on amedia content object. Therefore, a media content object that isassociated with the most number of “like” actions is presented beforeother media content objects in response to the administrator sorting themedia content objects by the “like” action.

In another example embodiment, the identification module 240 transmitsthe threshold number of media content objects to a machine learningsystem 215 trained to recognize unprofessional content. As one skilledin the art may appreciate, a machine learning system 215 may be trainedon a set of media content objects that have been identified as humor,puzzles, advertisements, or other unprofessional content as describedherein.

In another example embodiment, the indicator module 260 receives anindicator indicating that one of the identified media content objects isunprofessional. The indicator may be received in any way as one skilledin the art may appreciate. In certain examples, the indicator isreceived over a network connection according to an API, via a graphicaluser interface, or any other means.

In one example embodiment, the indicator module 260 receives theindicator programmatically. For example, as an administrator for theonline social networking service indicates unprofessional content via auser interface, the interface generates an indicator that the selectedmedia content object is unprofessional.

In another example embodiment, the indicator module 260 receives theindicator from the machine learning system 215. In certain examples, themachine learning system 215 is a third party system and/or service. Inone example, the indicator module 260 receives an indicator for eachmedia content object transmitted to the machine learning system 215.

In one example embodiment, in response to receiving an indicator that amedia content object is unprofessional, the indicator module 260propagates the indicator to each activity that includes the mediacontent object. In one example, a media content object is forwarded orliked 10,000 times. In response to the indicator module 260 receiving anindicator that the media content is unprofessional, the indicator module260 propagates the indicator to each of the 10,000 activities. Inanother example embodiment, the indicator module 260 may remove each ofthe activities associated with the media content object. In this way,the media content object 260 may be removed from the online socialnetworking service regardless of how many times members have performedactivities associated with the media content object.

In another example embodiment, the indicator module 260 trains themachine learning system 215. For example, the indicator module 260 mayassemble a large set of media content objects that have beenpre-identified as unprofessional. The indicator module 260 may retrievethe media content objects from any source as one skilled in the art mayappreciate. In one example embodiment, the indicator module 260 causesthe machine learning system 215 to train on the set of media contentobjects. In response, the machine learning system 215 recognizesunprofessional media content. Therefore, the machine learning system 215generates an indicator for each media content object and may indicatethat each media content object is obscene, humorous, spam, a puzzle, anadvertisement, or any other unprofessional media content. In oneexample, any content that is not professional in nature, may beidentified as unprofessional.

In one example embodiment, the indicator module 260 removes theactivities at the online social networking service that include theunprofessional media content. In one example, the indicator module 260removes the original submission activity for the unprofessional mediacontent and any and/or all activities associated with the media contentobject.

In one example, the media content and associated activities are deleted.In another example, the unprofessional media content objects arereplaced with an image indicating removal of the media content object.In another example, the indicator module 260 assigns a lower priorityvalue to the unprofessional media content. In other embodiments, theindicator module 260 classifies the unprofessional media content inorder to perform any other actions on the unprofessional media content.

FIG. 3 is a schematic block diagram illustrating one scenario 300 for acontent management system 150, according to an example embodiment. Inone example embodiment, the media content object is received by theonline social networking service 100 in a submission activity 310. Inresponse a first set of members may perform one or more activities onthe media content object 310. For example, a first activity 310Aincludes a first member commenting on the submission activity 310 and asecond activity 310B includes a second member hiding the submissionactivity 310. Furthermore, many other members of the online socialnetworking service may perform other actions at further levels resultingin thousands and/or millions of activities associated with the mediacontent object.

In one example embodiment, the activities module 220 stores thesubmission activity 310 and the second level (e.g., the activities 312Aand 312B). In one specific, non-limiting, example, a member names“Alfred” submits an image A. This submission activity includes (Alfred,submission, image A) and is a first level. In this example, anothermember named “Bruce” comments on the submission activity. This activityincludes (Bruce, comment, submission activity) and is a second level ofactivities. In response to another member named “Carol” likes Bruce'scomment, she generates another activity that includes (Carol, like,(Alfred, share, image A)). Such an approach helps to identify mediacontent objects without being overwhelmed by exponential growth inactivities in further levels.

In one example embodiment, the identification module 240 determines athreshold number of media content objects that resulted in a highestnumber of activities. In one example, the first two levels of activitiesfor the media content object include 400 activities. In response toother media content objects at the online social networking serviceresulting in less than 400 activities and the threshold number of mediacontent objects being more than one, the media content object 310 isincluded in the threshold number of media content objects.

In one example embodiment, the indicator module 260 receives anindicator 340 that indicates whether the media content object 310 isunprofessional. In one example, the indicator module 260 sends the mediacontent object 310 to a machine learning system 215 and receives theindicator 340 from the machine learning system 215. In another example,the indicator module 260 displays the media content object 310 to anadministrator of the online social networking service, and receives theindicator 340 from the administrator. For example, in response to theadministrator selecting the indicator 340 via a graphical userinterface.

FIG. 4 is a schematic block diagram illustrating a content managementsystem, according to one example embodiment. In one example embodiment,the content management system 150 includes the activities module 220,the identification module 240, and the indicator module 260. Theactivities module 220, the identification module 240 and the indicatormodule 260 may or may not be substantially similar to those modulesdepicted in FIG. 2. In this example embodiment, the indicator module 260includes the machine learning system 215 trained to recognizeunprofessional media content objects.

FIG. 5 is a flow chart diagram illustrating a method 500 for identifyingunprofessional media content, according to one example embodiment.According to one example embodiment, operations in the method 500 may beperformed by the content management system 150, using modules describedabove with respect to FIG. 2. As shown in FIG. 5, the method 500includes operations 410, 412, 414, and 416.

In one example embodiment, the method 500 begins and at operation 510,the activities module stores up to two levels of media contentactivities associated with a media content object. For example, asmembers of the online social networking service 100 perform activitieson the media content object, the activities module 220 stores theseactivities.

The method 500 continues at operation 512 and the identification module240 identifies a threshold number of media content objects associatedwith more activities than other media content objects at the onlinesocial networking service 100. In another embodiment, the identificationmodule 240 identifies the media content objects resulting in higheractivities over a recent period of time. In one example, theidentification module 240 identifies a media content object associatedwith a highest number of activities over the past month. Of course,other time periods may be used and this disclosure is not limited inthis regard.

The method 500 continues at operation 514 and the indicator module 260receives an indicator indicating that a media content object isunprofessional. In one example, the indicator indicates that the mediacontent object is a puzzle.

The method 500 continues at operation 516 and the indicator module 260propagates the indicator to each activity that is associated with theunprofessional media content. In one example, hundreds of members of theonline social networking service 100 commented on the unprofessionalmedia content and the indicator module 260 applies the indicator to eachof the activities that includes comments.

FIG. 6 is a flow chart diagram illustrating another method 600 foridentifying unprofessional media content, according to an exampleembodiment. According to one example embodiment, operations in themethod 600 may be performed by the content management system 150, usingmodules described above with respect to FIG. 2. As shown in FIG. 6, themethod 600 includes operations 610, 612, 614, 616, and 618.

In one example embodiment, the method 600 begins and at operation 610,the activities module stores up to three levels of media contentactivities for a media content object. For example, as members of theonline social networking service 100 perform activities on the mediacontent object, the activities module 220 stores these activities forthe identification module 240. In one embodiment, the activities module220 stores activities that include a member performing the activity, theaction for the activity, and a media content object that is the subjectof the activity.

The method 600 continues at operation 612 and the identification module240 identifies a threshold number of media content objects resulting inmore activities than other media content objects at the online socialnetworking service. In another embodiment, the identification module 240identifies the media content objects resulting in higher activities overa recent period of time. In one example, the identification module 240identifies a media content object resulting in a highest number ofactivities over the past 12 hours. Of course, other time periods may beused and this disclosure is not limited in this regard.

The method 600 continues at operation 614 the identification module 240presents one of the media content objects to an administrator of theonline social networking service 100. For example, the identificationmodule 240 may cause the media content object to be displayed via agraphical user interface.

The method 600 continues at operation 616 and the indicator module 260receives an indicator indicating that a media content object isunprofessional. In one example, the indicator indicates that the mediacontent object is an advertisement.

The method 600 continues at operation 616 and the indicator module 260propagates the indicator to each activity that is associated with theadvertisement. In one example, thousands of members of the online socialnetworking service 100 hid the unprofessional media content and theindicator module 260 applies the indicator to of the hide activities.

FIG. 7 is a flow chart diagram illustrating one method 700 foridentifying unprofessional media content, according to one exampleembodiment. According to one example embodiment, operations in themethod 700 may be performed by the content management system 150, usingmodules described above with respect to FIG. 2. As shown in FIG. 7, themethod 700 includes operations 710, 712, 714, 716, 718, and 720.

In one example embodiment, the method 700 begins and at operation 710,the activities module 220 trains the machine learning system 215 torecognize unprofessional media content. As one skilled in the art mayappreciate, the machine 151 may be trained on existing media contentobjects and existing indicators. In another embodiment, the activitiesmodule 220 configures a neural network, or other machine capable ofdetermining whether the media content is unprofessional.

The method 700 continues at operation 712 and the activities modulestores up to two levels of media content activities for a media contentobject. For example, as members of the online social networking serviceperform activities on the media content object, the activities module220 stores these activities for the identification module 240. Themethod 700 continues at operation 714 and the identification module 240identifies a threshold number of media content objects resulting in moreactivities than other media content objects at the online socialnetworking service 100.

The method 700 continues at operation 716 the identification module 240transmits one of the identified media content objects to the machinelearning system 215 for classification. In one example, theidentification module 240 transmits the media content object to themachine learning system 215 by writing the media content to storage thatis accessible by the machine learning system 215. In another example,the identification module 240 transmits the media content object to themachine learning system 215 using a network connection as one skilled inthe art may appreciate.

The method 700 continues at operation 718 and the indicator module 260receives an indicator from the machine learning system 215 indicatingthat the transmitted media content object is unprofessional. In oneexample, the indicator indicates that the media content object ishumorous. The method 700 continues at operation 720 and the indicatormodule 260 propagates the indicator to each activity associated with theadvertisement as described herein.

FIG. 8 is a flow chart diagram illustrating one method 800 for managingunprofessional media content, according to an example embodiment.According to one example embodiment, operations in the method 800 may beperformed by the content management system 150, using modules describedabove with respect to FIG. 2. As shown in FIG. 8, the method 800includes operations 810, 812, 814, 816, and 818.

In one example embodiment, the method 800 begins and at operation 810,the activities module stores up to two levels of media contentactivities for a media content object. For example, as members of theonline social networking service perform activities on the media contentobject, the activities module 220 stores these activities for theidentification module 240.

The method 800 continues at operation 812 and the identification module840 identifies a threshold number of media content objects resulting inmore activities than other media content objects at the online socialnetworking service. In another embodiment, the identification module 240identifies the media content objects resulting in higher activities overa recent period of time. In one example, the identification module 240identifies a media content object resulting in a highest number ofactivities over the past month. Of course, other time periods may beused and this disclosure is not limited in this regard.

The method 800 continues at operation 814 and the indicator module 260receives an indicator indicating that a media content object isunprofessional. In one example, the indicator indicates that the mediacontent object is a puzzle.

The method 800 continues at operation 816 and the indicator module 260propagates the indicator to each activity associated with theunprofessional media content. In one example, hundreds of members of theonline social networking service 100 commented on the unprofessionalmedia content and the indicator module 260 applies the indicator to eachof the activities that include the comment actions.

The method 800 continues at operation 818 and the indicator module 260removes activities associated with the unprofessional media contentobject. In one example, the indicator module 260 inspects activities anddetermines each activity that includes the media content object. In oneexample, the indicator module 260 deletes activities at the onlinesocial networking service 100 that include the unprofessional mediacontent. In this example, comments on the unprofessional media contentobject are deleted, forwards of the media content object are deleted,likes are deleted, and any other activities including the unprofessionalmedia content are removed from the online social networking service.

FIG. 9 is a block diagram illustrating components of a machine able toread instructions from a machine-readable medium. Specifically, FIG. 9shows a diagrammatic representation of the machine 1100 in the exampleform of a computer system and within which instructions 1124 (e.g.,software) for causing the machine 1100 to perform any one or more of themethodologies discussed herein may be executed. In alternativeembodiments, the machine 1100 operates as a standalone device or may beconnected (e.g., networked) to other machines. In a networkeddeployment, the machine 1100 may operate in the capacity of a servermachine or a client machine in a server-client network environment, oras a peer machine in a peer-to-peer (or distributed) networkenvironment. The machine 1100 may be a server computer, a clientcomputer, a personal computer (PC), a tablet computer, a laptopcomputer, a netbook, a set-top box (STB), a personal digital assistant(PDA), a cellular telephone, a smartphone, a web appliance, a networkrouter, a network switch, a network bridge, or any machine capable ofexecuting the instructions 1124, sequentially or otherwise, that specifyactions to be taken by that machine. Further, while only a singlemachine is illustrated, the term “machine” shall also be taken toinclude a collection of machines that individually or jointly executethe instructions 1124 to perform any one or more of the methodologiesdiscussed herein. In certain embodiments, the various modules describedin FIG. 2 are implemented as part of the instructions 1124. In anotherexample embodiment, the machine 151 trained to recognize unprofessionalmedia content is implemented as a collection of machines.

The machine 1100 includes a processor 1102 (e.g., a central processingunit (CPU), a graphics processing unit (GPU), a digital signal processor(DSP), an application specific integrated circuit (ASIC), aradio-frequency integrated circuit (RFIC), or any suitable combinationthereof), a main memory 1104, and a static memory 1106, which areconfigured to communicate with each other via a bus 1108. The machine1100 may further include a graphics display 1110 (e.g., a plasma displaypanel (PDP), a light emitting diode (LED) display, a liquid crystaldisplay (LCD), a projector, or a cathode ray tube (CRT)). The machine1100 may also include an alphanumeric input device 1112 (e.g., akeyboard), a cursor control device 1114 (e.g., a mouse, a touchpad, atrackball, a joystick, a motion sensor, or other pointing instrument), astorage unit 1116, a signal generation device 1118 (e.g., a speaker),and a network interface device 1120.

The storage unit 1116 includes a machine-readable medium 1122 on whichis stored the instructions 1124 (e.g., software) embodying any one ormore of the methodologies or functions described herein. Theinstructions 1124 may also reside, completely or at least partially,within the main memory 1104, within the processor 1102 (e.g., within theprocessor's cache memory), or both, during execution thereof by themachine 1100. Accordingly, the main memory 1104 and the processor 1102may be considered as machine-readable media. The instructions 1124 maybe transmitted or received over a network 104 via the network interfacedevice 1120. In another example embodiment, one or more of the modulesare implemented as a middleware, library code, or as part of anoperating system for the machine 1100.

As used herein, the term “memory” refers to a machine-readable mediumable to store data temporarily or permanently and may be taken toinclude, but not be limited to, random-access memory (RAM), read-onlymemory (ROM), buffer memory, flash memory, and cache memory. While themachine-readable medium 1122 is shown in an example embodiment to be asingle medium, the term “machine-readable medium” should be taken toinclude a single medium or multiple media (e.g., a centralized ordistributed database, or associated caches and servers) able to storeinstructions. The term “machine-readable medium” shall also be taken toinclude any medium, or combination of multiple media, that is capable ofstoring instructions (e.g., software) for execution by a machine (e.g.,machine 1100), such that the instructions, when executed by one or moreprocessors of the machine (e.g., processor 1102), cause the machine toperform any one or more of the methodologies described herein.Accordingly, a “machine-readable medium” refers to a single storageapparatus or device, as well as “cloud-based” storage systems or storagenetworks that include multiple storage apparatus or devices. The term“machine-readable medium” shall accordingly be taken to include, but notbe limited to, one or more data repositories in the form of asolid-state memory, an optical medium, a magnetic medium, or anysuitable combination thereof.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Certain embodiments are described herein as including logic or a numberof components, modules, or mechanisms. Modules may constitute eithersoftware modules (e.g., code embodied on a machine-readable medium or ina transmission signal) or hardware modules. A “hardware module” is atangible unit capable of performing certain operations and may beconfigured or arranged in a certain physical manner. In various exampleembodiments, one or more computer systems (e.g., a standalone computersystem, a client computer system, or a server computer system) or one ormore hardware modules of a computer system (e.g., a processor or a groupof processors) may be configured by software (e.g., an application orapplication portion) as a hardware module that operates to performcertain operations as described herein.

In some embodiments, a hardware module may be implemented mechanically,electronically, or any suitable combination thereof. For example, ahardware module may include dedicated circuitry or logic that ispermanently configured to perform certain operations. For example, ahardware module may be a special-purpose processor, such as a fieldprogrammable gate array (FPGA) or an ASIC. A hardware module may alsoinclude programmable logic or circuitry that is temporarily configuredby software to perform certain operations. For example, a hardwaremodule may include software encompassed within a general-purposeprocessor or other programmable processor. It will be appreciated thatthe decision to implement a hardware module mechanically, in dedicatedand permanently configured circuitry, or in temporarily configuredcircuitry (e.g., configured by software) may be driven by cost and timeconsiderations.

Accordingly, the phrase “hardware module” should be understood toencompass a tangible entity, be that an entity that is physicallyconstructed, permanently configured (e.g., hardwired), or temporarilyconfigured (e.g., programmed) to operate in a certain manner or toperform certain operations described herein. As used herein,“hardware-implemented module” refers to a hardware module. Consideringembodiments in which hardware modules are temporarily configured (e.g.,programmed), each of the hardware modules need not be configured orinstantiated at any one instance in time. For example, where a hardwaremodule comprises a general-purpose processor configured by software tobecome a special-purpose processor, the general-purpose processor may beconfigured as respectively different special-purpose processors (e.g.,comprising different hardware modules) at different times. Software mayaccordingly configure a processor, for example, to constitute aparticular hardware module at one instance of time and to constitute adifferent hardware module at a different instance of time.

Hardware modules can provide information to, and receive informationfrom, other hardware modules. Accordingly, the described hardwaremodules may be regarded as being communicatively coupled. Where multiplehardware modules exist contemporaneously, communications may be achievedthrough signal transmission (e.g., over appropriate circuits and buses)between or among two or more of the hardware modules. In embodiments inwhich multiple hardware modules are configured or instantiated atdifferent times, communications between such hardware modules may beachieved, for example, through the storage and retrieval of informationin memory structures to which the multiple hardware modules have access.For example, one hardware module may perform an operation and store theoutput of that operation in a memory device to which it iscommunicatively coupled. A further hardware module may then, at a latertime, access the memory device to retrieve and process the storedoutput. Hardware modules may also initiate communications with input oroutput devices, and can operate on a resource (e.g., a collection ofinformation).

The various operations of example methods described herein may beperformed, at least partially, by one or more processors that aretemporarily configured (e.g., by software) or permanently configured toperform the relevant operations. Whether temporarily or permanentlyconfigured, such processors may constitute processor-implemented modulesthat operate to perform one or more operations or functions describedherein. As used herein, “processor-implemented module” refers to ahardware module implemented using one or more processors.

Similarly, the methods described herein may be at least partiallyprocessor-implemented, a processor being an example of hardware. Forexample, at least some of the operations of a method may be performed byone or more processors or processor-implemented modules. Moreover, theone or more processors may also operate to support performance of therelevant operations in a “cloud computing” environment or as a “softwareas a service” (SaaS). For example, at least some of the operations maybe performed by a group of computers (as examples of machines includingprocessors), with these operations being accessible via a network (e.g.,the Internet) and via one or more appropriate interfaces (e.g., anapplication program interface (API)).

The performance of certain of the operations may be distributed amongthe one or more processors, not only residing within a single machine,but deployed across a number of machines. In some example embodiments,the one or more processors or processor-implemented modules may belocated in a single geographic location (e.g., within a homeenvironment, an office environment, or a server farm). In other exampleembodiments, the one or more processors or processor-implemented modulesmay be distributed across a number of geographic locations.

Some portions of this specification are presented in terms of algorithmsor symbolic representations of operations on data stored as bits orbinary digital signals within a machine memory (e.g., a computermemory). These algorithms or symbolic representations are examples oftechniques used by those of ordinary skill in the data processing artsto convey the substance of their work to others skilled in the art. Asused herein, an “algorithm” is a self-consistent sequence of operationsor similar processing leading to a desired result. In this context,algorithms and operations involve physical manipulation of physicalquantities. Typically, but not necessarily, such quantities may take theform of electrical, magnetic, or optical signals capable of beingstored, accessed, transferred, combined, compared, or otherwisemanipulated by a machine. It is convenient at times, principally forreasons of common usage, to refer to such signals using words such as“data,” “content,” “bits,” “values,” “elements,” “symbols,”“characters,” “terms,” “numbers,” “numerals,” or the like. These words,however, are merely convenient labels and are to be associated withappropriate physical quantities.

Unless specifically stated otherwise, discussions herein using wordssuch as “processing,” “computing,” “calculating,” “determining,”“presenting,” “displaying,” or the like may refer to actions orprocesses of a machine (e.g., a computer) that manipulates or transformsdata represented as physical (e.g., electronic, magnetic, or optical)quantities within one or more memories (e.g., volatile memory,non-volatile memory, or any suitable combination thereof), registers, orother machine components that receive, store, transmit, or displayinformation. Furthermore, unless specifically stated otherwise, theterms “a” or “an” are herein used, as is common in patent documents, toinclude one or more than one instance. Finally, as used herein, theconjunction “or” refers to a non-exclusive “or,” unless specificallystated otherwise.

What is claimed is:
 1. A system comprising: a machine-readable mediumhaving instructions stored thereon, which, when executed by a processor,cause the system to: store less than a threshold number of media contentactivity levels associated with media content objects at an onlinesocial networking service, the media content activities including amember of the online social networking service, an action, and one ofthe media content objects; identify, using the stored media contentactivities, a threshold number of media content objects associated witha higher number of the media content activities occurring over a recentthreshold period of time; receive an indicator indicating that one ofthe identified media content objects is unprofessional; and propagatethe indicator to each of the media content activities that includes theunprofessional media content object.
 2. The system of claim 1, whereinthe instruction further cause the system to present the threshold numberof media content objects to an administrator of the online socialnetworking service, and receiving the indicator includes receiving theindicator from the administrator via a graphical user interface.
 3. Thesystem of claim 2, wherein the graphical user interface allows theadministrator to sort the threshold number of media content objects by atype of the action associated with the media content objects.
 4. Thesystem of claim 1, wherein the instructions further cause the system totrain a machine on a set of indicators indicating unprofessional mediacontent objects.
 5. The system of claim 1, wherein the instructionsfurther cause the system to submit the threshold number of media contentobjects to a machine trained to recognize unprofessional content, andreceive an indicator for each of the media content objects that aredetermined to be unprofessional by the machine.
 6. The system of claim1, wherein the indicator indicates that the unprofessional media contentobject is one of obscene, humorous, spam, a puzzle, or an advertisement.7. The system of claim 1, wherein the instructions further cause thesystem to remove the media content activities at the online socialnetworking service that include the unprofessional media content object.8. A method comprising: storing less than a threshold number of mediacontent activity levels for media content objects at an online socialnetworking service, the media content activities including a member ofthe online social networking service, an action, and one of the mediacontent objects; identifying, using one or more hardware processors andthe stored media content activities, a threshold number of media contentobjects associated with a higher number of the media content activitiesoccurring over a recent threshold period of time; receiving an indicatorindicating that one of the identified media content objects isunprofessional; and propagating the indicator to each activity thatincludes the unprofessional media content object.
 9. The method of claim8, further comprising presenting the threshold number of media contentobjects to an administrator of the online social networking service, thereceiving comprises receiving the indicator from the administrator ofthe online social networking service via an interface.
 10. The method ofclaim 9, wherein the interface allows the administrator to sort thethreshold number of media content objects by a type of the actionassociated with the media content objects.
 11. The method of claim 8,further comprising training a machine on a set of indicators indicatingunprofessional media content, the machine configured to receive a mediacontent object and determine whether the media content object isunprofessional.
 12. The method of claim 8, further comprising submittingthe threshold number of the media content objects to a machine trainedto recognize unprofessional content, and receiving an indicator for eachof the media content objects that are determined to be unprofessional bythe machine.
 13. The method of claim 8, wherein the indicator indicatesthat the unprofessional media content object is one of obscene,humorous, spam, a puzzle, or an advertisement.
 14. The method of claim8, further comprising removing activities at the online socialnetworking service that include the unprofessional media content object.15. A machine-readable medium having instructions stored thereon, which,when executed by a processor, cause operations to be performed, theoperations comprising: storing media content activities at less than athreshold number of media content activity levels for media contentobjects at an online social networking service, the media contentactivities including a member of the online social networking service,an action, and one of the media content objects; identifying, using oneor more hardware processors and the stored media content activities, athreshold number of media content objects associated with a highernumber of the media content activities occurring over a recent thresholdperiod of time; receiving an indicator indicating that one of theidentified media content objects is unprofessional; and propagating theindicator to each activity that includes the unprofessional mediacontent object.
 16. The machine-readable medium of claim 15, wherein theoperations further comprise presenting the threshold number of mediacontent objects to an administrator of the online social networkingservice, the receiving comprises receiving the indicator from theadministrator of the online social networking service via an interface.17. The machine-readable medium of claim 15, wherein the operationsfurther comprise training a machine on a set of indicators indicatingunprofessional media content, the machine configured to receive a mediacontent object and determine whether the media content object isunprofessional.
 18. The machine-readable medium of claim 15, wherein theoperations further comprise submitting the threshold number of mediacontent objects to a machine trained to recognize unprofessionalcontent, and receiving an indicator for each of the media contentobjects that are determined to be unprofessional by the machine.
 19. Themachine-readable medium of claim 15, wherein the indicator indicatesthat the unprofessional media content object is one of obscene,humorous, spam, a puzzle, or an advertisement.
 20. The machine-readablemedium of claim 15, wherein the operations further comprise removingactivities at the online social networking service that include theunprofessional media content object.